package com.anosine.gpsl.android.presenter;

import com.anosine.gpsl.android.dao.ConsumerDao;
import com.anosine.gpsl.android.entity.Consumer;
import com.anosine.gpsl.android.impl.ConsumerDaoImpl;
import com.anosine.gpsl.android.presenter.BasePresenterActivity.OnLoadListener;
import com.anosine.gpsl.android.ui.ConsumerView;
import com.lidroid.xutils.util.LogUtils;
/**
 * @Title: ConsumerPresenter
 * @Package com.anosine.gpsl.android.presenter
 * @Description: 接收impl传递过来的Result解析JSON语句后的数据，并且改为实体后放入View的方法中传递给View，获取登录信息
 * @author: sunny
 * @date: 2015-11-24
 * @version V1.0
 */
public class ConsumerPresenter extends BasePresenterActivity implements OnLoadListener {
	private ConsumerDao dao;
	private ConsumerView view;

	/**
	 * @Title: ConsumerPresenter(ConsumerView view)
	 * @Description: 构造方法，初始化
	 * @param: view
	 * @throws
	 */
	public ConsumerPresenter(ConsumerView view) {
		super();
		this.dao = new ConsumerDaoImpl(this);
		this.view = view;
	}

	/**
	 * @Title: loadConsumer(String usermd5) 
	 * @Description: 获取个人信息接口，参数赋值
	 * @param: usermd5  登录验证串	
	 * @return: 无
	 * @throws
	 */

	public void loadConsumer(String usermd5) {
		dao.getConsumer(usermd5);
	}

	/**
	 * @Title: onLoadStart()
	 * @Description: 重写加载开始方法
	 * @param: 无
	 * @return: 无
	 * @throws
	 */

	@Override
	public void onLoadStart() {
		LogUtils.d("获取个人信息加载中。。");
	}

	/**
	 * @Title: onFailure()
	 * @Description: 重写加载失败方法
	 * @param: 无
	 * @return: 无
	 * @throws
	 */
	@Override
	public void onFailure() {
		LogUtils.d("获取个人信息加载失败。。");
	}

	/**
	 * @Title: onSuccess(Object obj)
	 * @Description: 重写加载成功方法
	 * @param: Object obj
	 * @return: 无
	 * @throws
	 */
	@Override
	public void onSuccess(Object obj) {
		Consumer res = (Consumer) obj;
		loadConsumerSuccess(res);
	}

	/**
	 * @Title: loadConsumerSuccess(Consumer res)
	 * @Description: 将传递过来的JSON语句解析后的数据改为实体后放入ConsumerView的方法中传递给View
	 * @param: Consumer res
	 * @return: 无
	 * @throws
	 */
	private void loadConsumerSuccess(Consumer res) {
		this.view.setConsumer(res);
	}

}
